<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>SystemSharp: SystemSharp.Assembler.XILSchedulingAdapter Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">SystemSharp
   &#160;<span id="projectnumber">0.3</span>
   </div>
   <div id="projectbrief">A system-level modeling framework for designing real-time embedded systems</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Packages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Properties</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Events</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">SystemSharp.Assembler.XILSchedulingAdapter Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Provides a scheduling adapter for XIL-3 instructions  
 <a href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for SystemSharp.Assembler.XILSchedulingAdapter:</div>
<div class="dyncontent">
 <div class="center">
  <img src="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.png" usemap="#SystemSharp.Assembler.XILSchedulingAdapter_map" alt=""/>
  <map id="SystemSharp.Assembler.XILSchedulingAdapter_map" name="SystemSharp.Assembler.XILSchedulingAdapter_map">
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:abebf37b0fd249f4bf75c61e000dbe411"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#abebf37b0fd249f4bf75c61e000dbe411">XILSchedulingAdapter</a> (<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_function.html">XIL3Function</a> func, <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_mapper_manager.html">XILMapperManager</a> xmm, <a class="el" href="class_system_sharp_1_1_components_1_1_component.html">Component</a> host, <a class="el" href="interface_system_sharp_1_1_synthesis_1_1_i_project.html">IProject</a> targetProject)</td></tr>
<tr class="memdesc:abebf37b0fd249f4bf75c61e000dbe411"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a new instance  <a href="#abebf37b0fd249f4bf75c61e000dbe411">More...</a><br/></td></tr>
<tr class="separator:abebf37b0fd249f4bf75c61e000dbe411"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a27bf0165f4a59d81d8b07524dc3af1ac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#a27bf0165f4a59d81d8b07524dc3af1ac">SetMaxFUAllocation</a> (object iclass, int max)</td></tr>
<tr class="memdesc:a27bf0165f4a59d81d8b07524dc3af1ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constrains the maximum quantity of functional units for a given instruction class.  <a href="#a27bf0165f4a59d81d8b07524dc3af1ac">More...</a><br/></td></tr>
<tr class="separator:a27bf0165f4a59d81d8b07524dc3af1ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5720a6234b5aeb7b0366af627e13193"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#ae5720a6234b5aeb7b0366af627e13193">TryPin</a> (<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a> task, long cstep, out long preHint, out long postHint)</td></tr>
<tr class="separator:ae5720a6234b5aeb7b0366af627e13193"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade254878db0dbf691ac26afec3b5770c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#ade254878db0dbf691ac26afec3b5770c">ClearSchedule</a> ()</td></tr>
<tr class="separator:ade254878db0dbf691ac26afec3b5770c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7bd785fe5f8348fb5dd4feea77d0bf9"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#ad7bd785fe5f8348fb5dd4feea77d0bf9">ComputeCStepCount</a> ()</td></tr>
<tr class="memdesc:ad7bd785fe5f8348fb5dd4feea77d0bf9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the total number of c-steps required by the schedule.  <a href="#ad7bd785fe5f8348fb5dd4feea77d0bf9">More...</a><br/></td></tr>
<tr class="separator:ad7bd785fe5f8348fb5dd4feea77d0bf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a604f88ddb384bc89396cf8e5cc66e16b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_system_sharp_1_1_assembler_1_1_flow_matrix.html">FlowMatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#a604f88ddb384bc89396cf8e5cc66e16b">Allocate</a> (<a class="el" href="interface_system_sharp_1_1_assembler_1_1_design_gen_1_1_i_datapath_builder.html">IDatapathBuilder</a> dpb)</td></tr>
<tr class="memdesc:a604f88ddb384bc89396cf8e5cc66e16b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs resource allocation and binding.  <a href="#a604f88ddb384bc89396cf8e5cc66e16b">More...</a><br/></td></tr>
<tr class="separator:a604f88ddb384bc89396cf8e5cc66e16b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73b8d80af49f553ea5518342b9cb82ce"><td class="memItemLeft" align="right" valign="top">string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#a73b8d80af49f553ea5518342b9cb82ce">GetScheduleReport</a> ()</td></tr>
<tr class="memdesc:a73b8d80af49f553ea5518342b9cb82ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a textual report on the found schedule  <a href="#a73b8d80af49f553ea5518342b9cb82ce">More...</a><br/></td></tr>
<tr class="separator:a73b8d80af49f553ea5518342b9cb82ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebce1a835b71d5e5ae86f8eb4306ec96"><td class="memItemLeft" align="right" valign="top">string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#aebce1a835b71d5e5ae86f8eb4306ec96">GetBindingReport</a> ()</td></tr>
<tr class="memdesc:aebce1a835b71d5e5ae86f8eb4306ec96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a textual report on the found resource binding  <a href="#aebce1a835b71d5e5ae86f8eb4306ec96">More...</a><br/></td></tr>
<tr class="separator:aebce1a835b71d5e5ae86f8eb4306ec96"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:a7433196bebd5ee5af69f12a18a1845eb"><td class="memItemLeft" align="right" valign="top">ControlFlowGraph&lt; <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#a7433196bebd5ee5af69f12a18a1845eb">CFG</a><code> [get]</code></td></tr>
<tr class="memdesc:a7433196bebd5ee5af69f12a18a1845eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the control-flow graph of scheduled instructions  <a href="#a7433196bebd5ee5af69f12a18a1845eb">More...</a><br/></td></tr>
<tr class="separator:a7433196bebd5ee5af69f12a18a1845eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32bf2c4514accc756dce00c5e038b323"><td class="memItemLeft" align="right" valign="top">IPropMap&lt; <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, <br class="typebreak"/>
ScheduleDependency&lt; <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a> &gt;[]&gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#a32bf2c4514accc756dce00c5e038b323">Preds</a><code> [get]</code></td></tr>
<tr class="memdesc:a32bf2c4514accc756dce00c5e038b323"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps each instruction to its predecessor dependencies  <a href="#a32bf2c4514accc756dce00c5e038b323">More...</a><br/></td></tr>
<tr class="separator:a32bf2c4514accc756dce00c5e038b323"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83f1f9e60f4bcb3a5be961233cab8ca9"><td class="memItemLeft" align="right" valign="top">IPropMap&lt; <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, <br class="typebreak"/>
ScheduleDependency&lt; <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a> &gt;[]&gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#a83f1f9e60f4bcb3a5be961233cab8ca9">Succs</a><code> [get]</code></td></tr>
<tr class="memdesc:a83f1f9e60f4bcb3a5be961233cab8ca9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps each instruction to its successor dependencies  <a href="#a83f1f9e60f4bcb3a5be961233cab8ca9">More...</a><br/></td></tr>
<tr class="separator:a83f1f9e60f4bcb3a5be961233cab8ca9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43c27d336a1ca86801c7716426e7e448"><td class="memItemLeft" align="right" valign="top">IPropMap&lt; <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, int[]&gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#a43c27d336a1ca86801c7716426e7e448">Operands</a><code> [get]</code></td></tr>
<tr class="memdesc:a43c27d336a1ca86801c7716426e7e448"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps each instruction to its operand slots  <a href="#a43c27d336a1ca86801c7716426e7e448">More...</a><br/></td></tr>
<tr class="separator:a43c27d336a1ca86801c7716426e7e448"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a615bffee2acbcccd2cea60535e837754"><td class="memItemLeft" align="right" valign="top">IPropMap&lt; <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, int[]&gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#a615bffee2acbcccd2cea60535e837754">Results</a><code> [get]</code></td></tr>
<tr class="memdesc:a615bffee2acbcccd2cea60535e837754"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps each instruction to its result slots  <a href="#a615bffee2acbcccd2cea60535e837754">More...</a><br/></td></tr>
<tr class="separator:a615bffee2acbcccd2cea60535e837754"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a887fe90af9437af3a155b4f317a6088d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_allocator.html">XILAllocator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#a887fe90af9437af3a155b4f317a6088d">Allocator</a><code> [get]</code></td></tr>
<tr class="memdesc:a887fe90af9437af3a155b4f317a6088d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the resource allocator  <a href="#a887fe90af9437af3a155b4f317a6088d">More...</a><br/></td></tr>
<tr class="separator:a887fe90af9437af3a155b4f317a6088d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a548cbee2f110bc16d7a7e38de06f84e3"><td class="memItemLeft" align="right" valign="top">IPropMap&lt; <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, long &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#a548cbee2f110bc16d7a7e38de06f84e3">Latency</a><code> [get]</code></td></tr>
<tr class="memdesc:a548cbee2f110bc16d7a7e38de06f84e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps each instruction to its latency  <a href="#a548cbee2f110bc16d7a7e38de06f84e3">More...</a><br/></td></tr>
<tr class="separator:a548cbee2f110bc16d7a7e38de06f84e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af96eaea2df8a46f053d4ec4714bc2a77"><td class="memItemLeft" align="right" valign="top">IPropMap&lt; <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, object &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#af96eaea2df8a46f053d4ec4714bc2a77">IClass</a><code> [get]</code></td></tr>
<tr class="memdesc:af96eaea2df8a46f053d4ec4714bc2a77"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps each instruction to its equivalence class (all instruction of same class can be mapped to same type of functional unit).  <a href="#af96eaea2df8a46f053d4ec4714bc2a77">More...</a><br/></td></tr>
<tr class="separator:af96eaea2df8a46f053d4ec4714bc2a77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6db8ca389a1c35d7e85560e07968ae8"><td class="memItemLeft" align="right" valign="top">IPropMap&lt; <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#ad6db8ca389a1c35d7e85560e07968ae8">Index</a><code> [get]</code></td></tr>
<tr class="memdesc:ad6db8ca389a1c35d7e85560e07968ae8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps each instruction to its positional index  <a href="#ad6db8ca389a1c35d7e85560e07968ae8">More...</a><br/></td></tr>
<tr class="separator:ad6db8ca389a1c35d7e85560e07968ae8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64607b93cc268df910288ffde26f9d51"><td class="memItemLeft" align="right" valign="top">IPropMap&lt; <a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, long &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html#a64607b93cc268df910288ffde26f9d51">CStep</a><code> [get]</code></td></tr>
<tr class="memdesc:a64607b93cc268df910288ffde26f9d51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps each instruction to the c-step at which it is scheduled  <a href="#a64607b93cc268df910288ffde26f9d51">More...</a><br/></td></tr>
<tr class="separator:a64607b93cc268df910288ffde26f9d51"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Provides a scheduling adapter for XIL-3 instructions </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00150">150</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="abebf37b0fd249f4bf75c61e000dbe411"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SystemSharp.Assembler.XILSchedulingAdapter.XILSchedulingAdapter </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_function.html">XIL3Function</a>&#160;</td>
          <td class="paramname"><em>func</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_mapper_manager.html">XILMapperManager</a>&#160;</td>
          <td class="paramname"><em>xmm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_system_sharp_1_1_components_1_1_component.html">Component</a>&#160;</td>
          <td class="paramname"><em>host</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="interface_system_sharp_1_1_synthesis_1_1_i_project.html">IProject</a>&#160;</td>
          <td class="paramname"><em>targetProject</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs a new instance </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">func</td><td>XIL-3 function</td></tr>
    <tr><td class="paramname">xmm</td><td>mapper manager</td></tr>
    <tr><td class="paramname">host</td><td>component instance to host allocated functional units</td></tr>
    <tr><td class="paramname">targetProject</td><td>code generation target project</td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00196">196</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a604f88ddb384bc89396cf8e5cc66e16b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_system_sharp_1_1_assembler_1_1_flow_matrix.html">FlowMatrix</a> SystemSharp.Assembler.XILSchedulingAdapter.Allocate </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="interface_system_sharp_1_1_assembler_1_1_design_gen_1_1_i_datapath_builder.html">IDatapathBuilder</a>&#160;</td>
          <td class="paramname"><em>dpb</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs resource allocation and binding. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">dpb</td><td>datapath builder to use</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>resulting flow matrix</dd></dl>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00506">506</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="ade254878db0dbf691ac26afec3b5770c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void SystemSharp.Assembler.XILSchedulingAdapter.ClearSchedule </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00487">487</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="ad7bd785fe5f8348fb5dd4feea77d0bf9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long SystemSharp.Assembler.XILSchedulingAdapter.ComputeCStepCount </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the total number of c-steps required by the schedule. </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00496">496</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="aebce1a835b71d5e5ae86f8eb4306ec96"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">string SystemSharp.Assembler.XILSchedulingAdapter.GetBindingReport </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns a textual report on the found resource binding </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00599">599</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a73b8d80af49f553ea5518342b9cb82ce"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">string SystemSharp.Assembler.XILSchedulingAdapter.GetScheduleReport </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns a textual report on the found schedule </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00578">578</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a27bf0165f4a59d81d8b07524dc3af1ac"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void SystemSharp.Assembler.XILSchedulingAdapter.SetMaxFUAllocation </td>
          <td>(</td>
          <td class="paramtype">object&#160;</td>
          <td class="paramname"><em>iclass</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constrains the maximum quantity of functional units for a given instruction class. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">iclass</td><td>instruction class</td></tr>
    <tr><td class="paramname">max</td><td>upper limit of functional unit instances</td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00417">417</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="ae5720a6234b5aeb7b0366af627e13193"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool SystemSharp.Assembler.XILSchedulingAdapter.TryPin </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>&#160;</td>
          <td class="paramname"><em>task</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>cstep</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">out long&#160;</td>
          <td class="paramname"><em>preHint</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">out long&#160;</td>
          <td class="paramname"><em>postHint</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00422">422</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a class="anchor" id="a887fe90af9437af3a155b4f317a6088d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_allocator.html">XILAllocator</a> SystemSharp.Assembler.XILSchedulingAdapter.Allocator</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the resource allocator </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00337">337</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a7433196bebd5ee5af69f12a18a1845eb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ControlFlowGraph&lt;<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>&gt; SystemSharp.Assembler.XILSchedulingAdapter.CFG</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the control-flow graph of scheduled instructions </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00289">289</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a64607b93cc268df910288ffde26f9d51"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">IPropMap&lt;<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, long&gt; SystemSharp.Assembler.XILSchedulingAdapter.CStep</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Maps each instruction to the c-step at which it is scheduled </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00408">408</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="af96eaea2df8a46f053d4ec4714bc2a77"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">IPropMap&lt;<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, object&gt; SystemSharp.Assembler.XILSchedulingAdapter.IClass</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Maps each instruction to its equivalence class (all instruction of same class can be mapped to same type of functional unit). </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00388">388</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="ad6db8ca389a1c35d7e85560e07968ae8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">IPropMap&lt;<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, int&gt; SystemSharp.Assembler.XILSchedulingAdapter.Index</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Maps each instruction to its positional index </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00398">398</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a548cbee2f110bc16d7a7e38de06f84e3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">IPropMap&lt;<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, long&gt; SystemSharp.Assembler.XILSchedulingAdapter.Latency</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Maps each instruction to its latency </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00377">377</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a43c27d336a1ca86801c7716426e7e448"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">IPropMap&lt;<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, int[]&gt; SystemSharp.Assembler.XILSchedulingAdapter.Operands</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Maps each instruction to its operand slots </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00319">319</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a32bf2c4514accc756dce00c5e038b323"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">IPropMap&lt;<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, ScheduleDependency&lt;<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>&gt;[]&gt; SystemSharp.Assembler.XILSchedulingAdapter.Preds</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Maps each instruction to its predecessor dependencies </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00299">299</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a615bffee2acbcccd2cea60535e837754"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">IPropMap&lt;<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, int[]&gt; SystemSharp.Assembler.XILSchedulingAdapter.Results</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Maps each instruction to its result slots </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00329">329</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a83f1f9e60f4bcb3a5be961233cab8ca9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">IPropMap&lt;<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>, ScheduleDependency&lt;<a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l3_instr.html">XIL3Instr</a>&gt;[]&gt; SystemSharp.Assembler.XILSchedulingAdapter.Succs</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Maps each instruction to its successor dependencies </p>

<p>Definition at line <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html#l00309">309</a> of file <a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="_x_i_l_scheduling_adapter_8cs_source.html">XILSchedulingAdapter.cs</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespace_system_sharp.html">SystemSharp</a></li><li class="navelem"><a class="el" href="namespace_system_sharp_1_1_assembler.html">Assembler</a></li><li class="navelem"><a class="el" href="class_system_sharp_1_1_assembler_1_1_x_i_l_scheduling_adapter.html">XILSchedulingAdapter</a></li>
    <li class="footer">Generated on Thu Dec 26 2013 14:21:56 for SystemSharp by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
  </ul>
</div>
</body>
</html>
